Software reverse engineering

نویسندگان

  • Arie van Deursen
  • Elizabeth Burd
چکیده

Introduction Reverse engineering aims at obtaining high level representations of programs. Reverse engineers typically start with a low level representation of a system (such as binaries, plain source code, or execution traces), and try to distill more abstract representations from these (such as, for the examples just given, source code, architectural views, or use cases, respectively). Reverse engineering methods and technologies play an important role in many software engineering tasks, such as program comprehension, system migrations, and software evolution.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Survey of Reverse Engineering and Program Comprehension

Reverse engineering has been a standard practice in the hardware community for some time. It has only been within the last ten years that reverse engineering, or “program comprehension,” has grown into the current sub-discipline of software engineering. Traditional software engineering is primarily focused on the development and design of new software. However, most programmers work on software...

متن کامل

ADecade of Reverse Engineering at Fraunhofer IESE – The Changing Role of Reverse Engineering

The Fraunhofer Institute for Experimental Software Engineering (IESE) recognized reverse engineering as an essential competence and thus has been active in the field since 1996, which is right from its beginning. The role of reverse engineering, however, within the institute changed over time. Since Fraunhofer IESE is an applied research institute its competencies are tailored to the market to ...

متن کامل

Exchange Of Software Representations Among Reverse Engineering Tools

This paper examines the exchange of software representations among reverse engineering tools. Background information on maintenance related activities and their importance in the software development lifecycle are outlined. An overview of tool support for software maintenance demonstrates the need for a standardized means for facilitating the exchange of information among reverse engineering to...

متن کامل

Software Reverse Engineering as a Sensemaking Task

Software reverse engineering involves analyzing computer program executables to understand their structure, functionality, and behavior. In this paper, common reverse engineering functions are decomposed to isolate the information-processing and sensemaking subtasks involved. This paper reviews the applicable literature on eliciting mental models of software reverse engineers. Based on the lite...

متن کامل

Reverse Engineering: Why and How to Reverse Engineer Software

Today especially large organizations are not only faced with the problem of replacing their information systems with completely new ones, but they have to maintain and to gain control over their legacy applications. Reverse engineering provides the means for this purpose supporting in recapturing lost information, restructuring complex systems or transforming old systems to a new and more maint...

متن کامل

Reverse Engineering

This paper provides the basic information about Reverse Software Engineering and its advantages and disadvantages of Reverse Engineering. Today Reverse Engineering is used in many fields of Information Technology in form of Legacy compatibility, Malware Analysis, Network Analysis, Binary code patching, debugging, and improvising existing algorithms, rapid prototyping and even software reusabili...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Journal of Systems and Software

دوره 77  شماره 

صفحات  -

تاریخ انتشار 2005